1. The Field of the Invention
The present invention relates to the field of data compression and more particularly, to the field of lossless compression and decompression of bi-tonal raster data.
2. The Relevant Art
Raster data is generated by graphical systems when converting graphical objects into a low-level bitstream appropriate for display and rendering. The generated bitstream is often bandwidth and processor intensive, especially in light of the push for systems with higher resolutions and faster rendering speeds. Many graphical systems and products such as page printers, phototypesetters, and electrostatic plotters have dedicated hardware with specialized and often costly architectures optimized for processing the large amounts of graphical data at high speeds.
While image quality and raster data processing requirements continue to increase, market demand for image-oriented devices and systems has proven to be particularly price sensitive. Manufacturers of these devices and systems are under constant pressure to deliver higher resolution systems at lower prices. As a result of these pressures, product life cycles have been dramatically shortened.
Shortened product life cycles make it difficult for manufacturers to recoup the tooling and marketing costs associated with the introduction of new products. Cost-effective components are leveraged to their maximum capacity and performance. Existing devices and Systems often have little bandwidth or processing capacity available for new features or enhancements. Ideally, additional features and enhancements must fit within the constraints of existing products and thereby increase their product life cycle at no additional materials cost.
Compression and decompression of raster data offers the hope of reducing the bandwidth requirements at a given rendering resolution and increasing the data throughput and rendering resolution attainable over fixed-bandwidth channels. However, compression algorithms are typically complex and require large amounts of memory and processing power. Large dictionaries of reference data or complex mathematical formulas may be used, each of which requires significant computational resources. Compression algorithms often process a relatively large context of data surrounding a data element in order to spot redundancies or patterns within the raster data. Processing large amounts of data increases both the memory requirements and the processing requirements of compression systems.
From the above discussion, it can be seen that it would be beneficial to improve the performance of graphical systems and other data-intensive systems by providing an apparatus and method for compressing and decompressing data using minimal processing resources. Minimizing the complexity of compressing and decompressing data facilitates handling more data with lower cost components. Low complexity compression also facilitates adding additional capability to existing products and systems at little or no additional cost.